home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / gnu / gas / gassrc02.zoo / Makefile < prev    next >
Makefile  |  1992-04-27  |  12KB  |  368 lines

  1. # HISTORY
  2. # 31-Jul-91  Shin Iwamoto (shin) at CANON Inc.
  3. #    Added difinitions for STONE.
  4. # old day    Shin Iwamoto (shin) at CANON Inc.
  5. #    Added -DCANON.
  6.  
  7. # Makefile for GAS.
  8. # Copyright (C) 1989, Free Software Foundation
  9. # This file is part of GAS, the GNU Assembler.
  10. # GAS is free software; you can redistribute it and/or modify
  11. # it under the terms of the GNU General Public License as published by
  12. # the Free Software Foundation; either version 1, or (at your option)
  13. # any later version.
  14. # GAS is distributed in the hope that it will be useful,
  15. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  16. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  17. # GNU General Public License for more details.
  18. # You should have received a copy of the GNU General Public License
  19. # along with GAS; see the file COPYING.  If not, write to
  20. # the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
  21.  
  22. # This makefile may be used to make the VAX, 68020, 80386, 
  23. # SPARC, ns32k, or i860 assembler(s).
  24.  
  25. BINDIR = /usr/local/bin
  26. CC=gcc
  27.  
  28. # If you are on a BSD system, un-comment the next two lines, and comment out
  29. # the lines for SystemV and HPUX below
  30. #G0 = -g  -I. #-O -Wall
  31. #LDFLAGS = $(CFLAGS)
  32. #
  33. # To compile gas for STONE, link m-stone.h to m68k.h, and un-comment the
  34. # next two lines.
  35. G0 = -g  -I. -Dm68040 -DCANON #-O -Wall
  36. LDFLAGS = 
  37. #
  38. # To compile gas on a System Five machine, comment out the two lines above
  39. # and un-comment out the next three lines
  40. # Comment out the -lPW on the LOADLIBES line if you are using GCC.
  41. # G0 = -g -I. -DUSG
  42. # LDFLAGS = $(CFLAGS)
  43. # LOADLIBES = -lmalloc -lPW
  44. #
  45. # To compile gas for HPUX, link m-hpux.h to m68k.h , and un-comment the
  46. # next two lines.  (If you are using GCC, comment out the alloca.o part)
  47. # (Get alloca from the emacs distribution, or use GCC.)
  48. # HPUX 7.0 may have a bug in setvbuf.  gas gives an error message like
  49. # 1:"Unknown operator" -- Statement 'NO_APP' ignored
  50. # if setvbuf is broken.  Re-compile input-file.c (and only input-file.c
  51. # with -DVMS and the problem should go away.
  52. #
  53. # G0 = -g -I. -DUSG
  54. # LOADLIBES = alloca.o
  55. #
  56. # To compile gas for a Sequent Symmetry, comment out all the above lines,
  57. # and un-comment the next two lines.
  58. # G0 = -g -I. -DUSE_SYSTEM_HDR -DEXEC_VERSION=1
  59. # LOADLIBES = -lc /usr/att/lib/libc.a
  60.  
  61. # If you just want to compile the vax assembler, type 'make avax'
  62.  
  63. # If you just want to compile the i386 assembler, type 'make a386'
  64.  
  65. # If you just want to compile the ns32k assembler, type 'make a32k'
  66.  
  67. # If you just want to compile the sparc assembler, type 'make asparc'
  68.  
  69. # If you just want to compile the mc68020 assembler, make sure m68k.h
  70. # is correctly set up, and type type 'make a68'  (Except on HPUX machines,
  71. # where you will have to make the changes marked below before typing
  72. # 'make a68'
  73. # m68k.h should be a symbolic or hard-link to one of
  74. # m-sun3.h , m-hpux.h or m-generic.h
  75. # depending on which machine you want to compile the 68020 assembler for.
  76. #
  77. # If you want the 68k assembler to be completely compatable with the the
  78. # SUN one, un-comment the -DSUN_ASM_SYNTAX line below.
  79. #
  80. # If you machine does not have vfprintf, but does have _doprnt(),
  81. # remove the # from the -DNO_VARARGS line below.
  82. #
  83. # If the return-type of a signal-hander is void (instead of int),
  84. # remove the # from the -DSIGTY line below.
  85. #
  86. # To include the mc68851 mmu coprocessor instructions in the 68020 assembler,
  87. # remove the # from the -Dm68851 line below.
  88. #
  89. # If you want the 68020 assembler use a register prefix character, un-comment
  90. # the REGISTER_PREFIX line, and (maybe) change the '%' to the appropriate
  91. # character.
  92. #
  93. # If you want the assembler to treat .L* or ..* symbols as local, instead of
  94. # the usual L* symbols, un-comment the DOT_LABEL_PREFIX line.
  95. #
  96. # If you want the 80386 assembler to correctly handle fsub/fsubr and fdiv/fdivr
  97. # opcodes (unlike most 80386 assemblers), remove the # from
  98. # the -DNON_BROKEN_WORDS line below.
  99. #
  100. # To compile 80386 Gas for the Sequent Symmetry, un-comment the -DEXEC_VERSION
  101. # and the -DUSE_SYSTEM_HDR lines below.
  102. #
  103. # To compile gas for the HP 9000/300 un-comment the -DUSE_HP_HDR line below.
  104. #
  105. # For the ns32k, the options are 32532 or 32032 CPU and 32381 or 32081 FPU.
  106. # To select the NS32532, remove the # from the -DNS32532 line below.
  107. # To compile in tne NS32381 opcodes in addition to the NS32081 opcodes
  108. # (the 32381 is a superset of the 32081), remove the # from the -DNS32381
  109. # line below.
  110. #
  111. # For the ns32k on a Sequent, uncomment the SEQUENT_COMPATABILITY line below.
  112. #
  113. # If you want the .align N directive to align to the next N byte boundry,
  114. # instead of the next 1<<N boundry, un-comment the OTHER_ALIGN line below.
  115. # (This option is automatically enabled when building the sparc assembler.
  116. #
  117.  
  118. O1 =  -DNO_VARARGS
  119. O2 = # -DNON_BROKEN_WORDS
  120. O3 = # -Dm68851
  121. O4 = # -DEXEC_VERSION=1
  122. O5 = # -DSIGTY=void
  123. O6 = # -DNS32532
  124. O6 = # -DNS32381
  125. O7 = # -DDOT_LABEL_PREFIX
  126. O8 = # -DSEQUENT_COMPATABILITY
  127. O9 = # -DREGISTER_PREFIX=\'%\'
  128. O10= # -DOTHER_ALIGN
  129.  
  130. G1 = # -DUSE_SYSTEM_HDR
  131. G2 = # -DUSE_HP_HDR
  132. G3 =  -DSUN_ASM_SYNTAX
  133.  
  134. OPTIONS = $(O1) $(O2) $(O3) $(O4) $(O5) $(O6) $(O7) $(O8) $(O9) $(O10)
  135.  
  136. CFLAGS = $(G0) $(G1) $(G2) $(G3) $(G4)
  137.  
  138. #
  139. # To make the 68020 assembler compile as the default, un-comment the next
  140. # line, and comment out all the other lines that start with DEFAULT_GAS
  141. DEFAULT_GAS=a68
  142. #
  143. # To make the VAX assembler compile as the default, un-comment the next
  144. # line and commment out all the other lines that start with DEFAULT_GAS
  145. #DEFAULT_GAS=avax
  146. #
  147. # To make the 80386 assembler compile as the default, un-comment the next
  148. # line and commment out all the other lines that start with DEFAULT_GAS
  149. #DEFAULT_GAS=a386
  150. #
  151. # To make the ns32k assembler compile as the default, un-comment the next
  152. # line and commment out all the other lines that start with DEFAULT_GAS
  153. #DEFAULT_GAS=a32k
  154. #
  155. # To make the sparc assembler compile as the default, un-comment the next
  156. # line and commment out all the other lines that start with DEFAULT_GAS
  157. #DEFAULT_GAS=asparc
  158. #
  159. # To make the i860 assembler compile as the default, un-comment the next
  160. # line and comment out all the other lines that start with DEFAULT_GAS
  161. #DEFAULT_GAS=a860
  162.  
  163. # Global Sources -------------------------------------------------------------
  164.  
  165. a =\
  166. as.o        xrealloc.o    xmalloc.o    hash.o        hex-value.o   \
  167. atof-generic.o    append.o    messages.o    expr.o        app.o         \
  168. frags.o        input-file.o    input-scrub.o    output-file.o                  \
  169. subsegs.o    symbols.o                    version.o     \
  170. flonum-const.o    flonum-copy.o    flonum-mult.o    strstr.o    bignum-copy.o \
  171. obstack.o
  172. #gdb.o        gdb-file.o    gdb-symbols.o    gdb-blocks.o    gdb-lines.o
  173.  
  174. a:    $(DEFAULT_GAS)
  175.     @rm -f a
  176.     @ln $(DEFAULT_GAS) a
  177.  
  178. # I860 GAS ------------------------------------------------------------------
  179. u = i860.o  atof-ieee.o  write-i860.o  read-i860.o
  180.  
  181. U = i860.c  i860.h i860-opcode.h
  182.  
  183. i860.o:    i860.c i860.h i860-opcode.h as.h frags.h struc-symbol.h
  184. i860.o:    flonum.h expr.h hash.h md.h write.h read.h symbols.h
  185.     $(CC) -c $(CFLAGS) -DI860 i860.c
  186.  
  187. atof-ieee.o:    flonum.h
  188.  
  189. write-i860.o:    write.c i860.h
  190.     $(CC) -c -DI860 $(CFLAGS) write.c
  191.     mv write.o write-i860.o
  192.  
  193. read-i860.o: read.c i860.h
  194.     $(CC) -c -DI860 $(CFLAGS) read.c
  195.     mv read.o read-i860.o
  196.  
  197. a860: $a $u
  198.     $(CC) -o a860 $(LDFLAGS) $a $u $(LOADLIBES)
  199.  
  200. # SPARC GAS ------------------------------------------------------------------
  201. v = sparc.o  atof-ieee.o  write-sparc.o  read-sparc.o
  202.  
  203. V = sparc.c  sparc.h  sparc-opcode.h
  204.  
  205. atof-ieee.o:    flonum.h
  206. sparc.o:    sparc.c sparc.h sparc-opcode.h as.h frags.h struc-symbol.h
  207. sparc.o:    flonum.h expr.h hash.h md.h write.h read.h symbols.h
  208.     $(CC) -c $(CFLAGS) -DSPARC sparc.c
  209.  
  210. write-sparc.o:    write.c
  211.     $(CC) -c -DSPARC $(CFLAGS) write.c
  212.     mv write.o write-sparc.o
  213.  
  214. read-sparc.o: read.c
  215.     $(CC) -c -DSPARC $(CFLAGS) read.c
  216.     mv read.o read-sparc.o
  217.  
  218. asparc: $a $v
  219.     $(CC) -o asparc $(LDFLAGS) $a $v $(LOADLIBES)
  220.  
  221. # NS32K GAS ------------------------------------------------------------------
  222. w = ns32k.o  atof-ieee.o  write-ns32k.o  read-ns32k.o
  223.  
  224. W = ns32k.c ns32k-opcode.h
  225.  
  226. atof-ieee.o:    flonum.h
  227. ns32k.o:    as.h frags.h struc-symbol.h flonum.h expr.h md.h hash.h
  228. ns32k.o:    write.h symbols.h ns32k-opcode.h ns32k.c
  229.     $(CC) $(CFLAGS) $(OPTIONS) -c ns32k.c
  230.  
  231. writ